package org.myy.learn.aaa.d_子串;

import lombok.extern.slf4j.Slf4j;

@Slf4j
public class 和为K的子数组 {

    //子数组
    public static int subarraySum(int[] nums, int k) {
        int n = nums.length, result = 0;
        for (int i=0; i<n; i++){
            int sum = nums[i];
            if (sum == k){
                result++;
                //continue;//不要退出，可能有零
            }
            for (int j=i+1; j<n; j++){
                sum += nums[j];
                if (sum == k){
                    result++;
                }
//                if (sum > k){   //有可能是负数
//                    break;
//                }
            }
        }
        return result;
    }

    public static void main(String[] args) {
        int[] nums = new int[]{0,0};
        int k = 0;
        int subarraySum = subarraySum(nums, k);
        log.info("执行结束，subarraySum={}", subarraySum);

    }



    //非子数组
//    public static int subarraySum(int[] nums, int k) {
//        Arrays.sort(nums);     //还是得排序呀！   >>只是显示可能情况[案例数值or案例数量]，又不是下标
//        int n = nums.length, result = 0;
//        for (int i=0; i<n; i++){
//            int sum = nums[i];
//            if (sum == k){
//                result++;
//                continue;//已经递增排序
//            }
//            for (int j=i+1; j<n; j++){
//                sum += nums[j];
//                if (sum == k){
//                    result++;
//                }
//                if (sum > k){
//                    break;
//                }
//            }
//        }
//        return result;
//    }
}
